package com.ws.exer3;

import java.util.Calendar;
import java.util.Scanner;

/*
定义PayrollSystem类，创建Employee变量数组并初始化，
该数组存放各类雇员对象的引用。I利用循环结构遍历数组元素，
输出各个对象的类型, name , number,birthday ,以及该对象生日.当
键盘输入本月月份值时，如果本月是某个Employee对象的生日，
还要输出增加工资信息。

 */
public class PayrollSystem {
    public static void main(String[] args) {

        //方式一：
//        Scanner scan = new Scanner(System.in);
//        System.out.println("请输入当前的月份：");
//        int month = scan.nextInt();
//        System.out.println("请输入当前月的天数：");
//        int day = scan.nextInt();

        //方式二：
        Calendar instance = Calendar.getInstance();
        int month = instance.get(Calendar.MONTH);//获取当前的月份，月份从零开始
        month++;
        int day = instance.get(Calendar.DATE);//获取当前月的第几天

        Employee[] emps = new Employee[2];

        emps[0] = new SalariedEmployee("马森", 1002, new MyDate(1991,2,3), 10000);
        emps[1] = new HourlyEmployee("范宇生", 2001, new MyDate(1990, 4, 5), 20, 240);

        for (Employee employee: emps) {
            System.out.println(employee);
            System.out.println("月工资为：" + employee.earnings());

            if (employee.getBirthday().getMonth() == month && employee.getBirthday().getDay() == day) {
                System.out.println("生日快乐，奖励放假一天");
            }
        }
    }
}
